package com.xdcplus.web.service.bd;

import com.xdcplus.mp.service.BaseService;
import com.xdcplus.pager.vo.PageVO;
import com.xdcplus.web.common.pojo.entity.bd.BdWetWeightTarget;
import com.xdcplus.web.common.pojo.dto.bd.BdWetWeightTargetDTO;
import com.xdcplus.web.common.pojo.dto.bd.BdWetWeightTargetFilterDTO;
import com.xdcplus.web.common.pojo.vo.bd.BdWetWeightTargetVO;

import java.util.List;


/**
 * 丝印湿重目标维护(BdWetWeightTarget)表服务接口层
 *
 * @author Zhecheng.Ren
 * @since 2024-10-22 15:10:15
 */
public interface BdWetWeightTargetService extends BaseService<BdWetWeightTarget, BdWetWeightTarget, BdWetWeightTargetVO> {

    /**
     * 添加丝印湿重目标维护(BdWetWeightTarget)
     *
     * @param bdWetWeightTargetDTO 丝印湿重目标维护(BdWetWeightTargetDTO)
     */
    void saveBdWetWeightTarget(BdWetWeightTargetDTO bdWetWeightTargetDTO);

    /**
     * 修改丝印湿重目标维护(BdWetWeightTarget)
     *
     * @param bdWetWeightTargetDTO 丝印湿重目标维护(BdWetWeightTargetDTO)
     */
    void updateBdWetWeightTarget(BdWetWeightTargetDTO bdWetWeightTargetDTO);

    /**
     * 批量保存或更新丝印湿重目标维护(BdWetWeightTarget)
     *
     * @param bdWetWeightTargetList 丝印湿重目标维护(BdWetWeightTargetList)
     * @return {@link Boolean} 是否成功
     */
    Boolean saveOrUpdateBatch(List<BdWetWeightTarget> bdWetWeightTargetList);

    /**
     * 批量保存或更新丝印湿重目标维护(BdWetWeightTargetDTOList)
     *
     * @param bdWetWeightTargetDTOList 丝印湿重目标维护(BdWetWeightTargetDTOList)
     * @return {@link Boolean} 是否成功
     */
    Boolean saveOrUpdateBatchByDTOList(List<BdWetWeightTargetDTO> bdWetWeightTargetDTOList);

    /**
     * 删除丝印湿重目标维护(BdWetWeightTarget)
     *
     * @param id 丝印湿重目标维护(BdWetWeightTarget)主键
     */
    void deleteBdWetWeightTargetLogical(Long id);
    
    void deleteBdWetWeightTargetByIds(String ids);

    /**
     * 查询丝印湿重目标维护(BdWetWeightTarget)
     *
     * @param bdWetWeightTargetFilterDTO 过程状态过滤DTO
     * @return {@link PageVO<BdWetWeightTargetVO>} 状态信息
     */
    List<BdWetWeightTargetVO> queryBdWetWeightTargetVOList(BdWetWeightTargetFilterDTO bdWetWeightTargetFilterDTO);

    /**
     * 查询丝印湿重目标维护(BdWetWeightTarget)
     *
     * @param bdWetWeightTargetFilterDTO 过程状态过滤DTO
     * @return {@link PageVO<BdWetWeightTargetVO>} 状态信息
     */
    PageVO<BdWetWeightTargetVO> queryBdWetWeightTarget(BdWetWeightTargetFilterDTO bdWetWeightTargetFilterDTO);

    /**
     * 查询一个
     *
     * @param id 丝印湿重目标维护(BdWetWeightTarget)主键
     * @return {@link BdWetWeightTargetVO} 丝印湿重目标维护(BdWetWeightTarget)信息
     */
    BdWetWeightTargetVO queryBdWetWeightTargetById(Long id);
}
